The introduction of electronic trading mechanisms into trading venues (e.g., trading exchanges) for financial products (e.g., securities and derivative contracts (“derivatives”)) has over the past several decades been an ongoing and ever accelerating process. This process has been driven, in part, by the need for both immediacy of order execution and dissemination of information. These needs have become more acute as financial product trading volumes have continued to rise and technology has allowed for greater efficiency in trading.
While the disclosure of the current application can be applied generally to all types of financial product trading (e.g., the trading of securities, futures contracts (“futures”), options contracts (“options”), or any other type of tradable financial product), the present disclosure will focus primarily on the workings of a derivative exchange, such as a futures or options exchange. A derivative is a financial instrument whose value depends at least in part on the value and/or characteristic(s) of another security, known as an underlying asset (e.g., an index, security, derivative, etc. . . . ). Two exemplary and well known derivatives are options and futures.
Derivatives, such as options and futures, may be traded at organized derivative exchanges (e.g., the Chicago Board Options Exchange, Incorporated (“CBOE”)). Generally, modern trading exchanges have exchange specific computer and electronic communication systems that allow for the electronic submission, execution and reporting of orders via electronic communication networks, such as the Internet. These systems are often optimized for maximum efficiency, speed, and usability. The optimization for efficiency, speed, and usability is especially important as modern trading techniques continue to advance and become more complex.
In derivatives trading (e.g., the trading of options) it is possible to execute multiple parts of an order that work in concert to create a particular investment position. This strategy may be referred to as a “spread” order, and the multiple parts of the order may be referred to as “legs.” Options exchanges, such as CBOE, offer a spread order type for executing a complex spread of up to four legs.
For example, a trader might select two legs (e.g., BUY leg and SELL leg) to be included in a spread order. The spread order is then sent to an options exchange for execution. At CBOE, a spread order is placed into a complex order book that is separate from the order book that contains non-complex orders. Spread orders residing on the complex order book can trade against each other and/or the legs of the spread orders residing on the complex order book can trade against orders residing on the non-complex order book.
In executing the legs of a spread order, exchanges must satisfy the rules governing the trading of individual orders. A spread order can only be executed if all of the legs of the order can be filled and the legs can only be filled if the rules that govern the trading of individual orders are satisfied. That is, if any one of the legs of a spread order is unable to be filled, the entire spread order cannot be executed. Thus, the difficulty in executing a spread order increases significantly as the number of legs in the order increases.
Additionally, part of the difficulty in executing spread orders is properly choosing and pricing the various legs that make up the order in such a way that the order can execute. For example, it is entirely possible that two spread orders residing on a complex order book could have contra positions that fill the legs of both orders. However, because the pricing of one or more of the legs fails to satisfy the rules governing the trading of individual orders the spread order cannot execute.
Thus, there is a need for a system and method for creating a synthetic order that would allow contra positions of multi-component orders to execute based on overall price of the multi-component order and not on the prices of the individual components. Additionally, there is a need for a system and method for creating a synthetic order that allows for execution without consideration of the “executability” of the non-synthetic components associated with the synthetic order type. Additionally, there is a need for a system and method for determining what components should be included in a synthetic multi-component order. Additionally, there is a need for a system and method for processing a synthetic multi-component order efficiently such that orders having tens, hundreds, or thousands of legs could be executed in one transaction.